package com.cxso.example.domain.wlpt.waybill;

import com.cxso.example.enums.wlpt.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

@Setter
@Getter
@Accessors(chain = true)
@Schema(description = "费用项详情")
public class ApiWaybillFeeItemDetailDomain {

    @Schema(description = "费用id")
    private String id;

    @Schema(description = "费用类型")
    private FeeTypeEnum feeType;

    @Schema(description = "自定义费用名称")
    private String customName;

    @Schema(description = "自定义单价")
    private BigDecimal customUnit;

    @Schema(description = "自定义费用计价方式")
    private DetailMethodEnum customMethod;

    @Schema(description = "自定义费用总额")
    private BigDecimal detailTotalAmount;

    @Schema(description = "增补金额")
    private BigDecimal augmentAmount;

    @Schema(description = "扣减金额")
    private BigDecimal deductionAmount;

    @Schema(description = "增补扣减原因")
    private String augmentDeductionReason;

    @Schema(description = "自定义费用收款方")
    private CustomPayeeEnum customPayee;

    @Schema(description = "费用归属")
    private FeeBelongEnum feeBelong;

    @Schema(description = "司机确认状态")
    private CustomConfirmEnum confirmStatus;

    @Schema(description = "合同地址")
    private String contractUrl;

}
